css: Remove -gtk-icon-effect
authorBenjamin Otte <otte@redhat.com>
Sat, 31 Dec 2016 01:36:00 +0000 (02:36 +0100)
committerBenjamin Otte <otte@redhat.com>
Sat, 31 Dec 2016 01:49:47 +0000 (02:49 +0100)
-gtk-icon-filter replaces this now.

gtk/gtkcssenumvalue.c
gtk/gtkcssenumvalueprivate.h
gtk/gtkcssstylepropertyimpl.c
gtk/gtkcsstypesprivate.h
gtk/gtkiconhelper.c

index 3120a817a9e3d58bca238a75c3fdb20b4c940d01..35447ff830327b762b1091169128aec653d45949 100644 (file)
@@ -930,93 +930,6 @@ _gtk_css_fill_mode_value_get (const GtkCssValue *value)
   return value->value;
 }
 
-/* GtkCssIconEffect */
-
-static const GtkCssValueClass GTK_CSS_VALUE_ICON_EFFECT = {
-  gtk_css_value_enum_free,
-  gtk_css_value_enum_compute,
-  gtk_css_value_enum_equal,
-  gtk_css_value_enum_transition,
-  gtk_css_value_enum_print
-};
-
-static GtkCssValue image_effect_values[] = {
-  { &GTK_CSS_VALUE_ICON_EFFECT, 1, GTK_CSS_ICON_EFFECT_NONE, "none" },
-  { &GTK_CSS_VALUE_ICON_EFFECT, 1, GTK_CSS_ICON_EFFECT_HIGHLIGHT, "highlight" },
-  { &GTK_CSS_VALUE_ICON_EFFECT, 1, GTK_CSS_ICON_EFFECT_DIM, "dim" }
-};
-
-GtkCssValue *
-_gtk_css_icon_effect_value_new (GtkCssIconEffect image_effect)
-{
-  guint i;
-
-  for (i = 0; i < G_N_ELEMENTS (image_effect_values); i++)
-    {
-      if (image_effect_values[i].value == image_effect)
-        return _gtk_css_value_ref (&image_effect_values[i]);
-    }
-
-  g_return_val_if_reached (NULL);
-}
-
-GtkCssValue *
-_gtk_css_icon_effect_value_try_parse (GtkCssParser *parser)
-{
-  guint i;
-
-  g_return_val_if_fail (parser != NULL, NULL);
-
-  for (i = 0; i < G_N_ELEMENTS (image_effect_values); i++)
-    {
-      if (_gtk_css_parser_try (parser, image_effect_values[i].name, TRUE))
-        return _gtk_css_value_ref (&image_effect_values[i]);
-    }
-
-  return NULL;
-}
-
-GtkCssIconEffect
-_gtk_css_icon_effect_value_get (const GtkCssValue *value)
-{
-  g_return_val_if_fail (value->class == &GTK_CSS_VALUE_ICON_EFFECT, GTK_CSS_ICON_EFFECT_NONE);
-
-  return value->value;
-}
-
-void
-gtk_css_icon_effect_apply (GtkCssIconEffect  icon_effect,
-                           cairo_surface_t  *surface)
-{
-  cairo_t *cr;
-
-  switch (icon_effect)
-    {
-    case GTK_CSS_ICON_EFFECT_DIM:
-      cr = cairo_create (surface);
-      cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE);
-      cairo_set_source_rgba (cr, 0, 0, 0, 0); /* transparent */
-      cairo_paint_with_alpha (cr, 0.5);
-      cairo_destroy (cr);
-      break;
-
-    case GTK_CSS_ICON_EFFECT_HIGHLIGHT:
-      cr = cairo_create (surface);
-      cairo_set_source_rgb (cr, 0.1, 0.1, 0.1);
-      cairo_set_operator (cr, CAIRO_OPERATOR_COLOR_DODGE);
-      /* DANGER: We mask with ourself - that works for images, but... */
-      cairo_mask_surface (cr, surface, 0, 0);
-      cairo_destroy (cr);
-      break;
-
-    default:
-      g_warn_if_reached ();
-      /* fall through */
-    case GTK_CSS_ICON_EFFECT_NONE:
-      break;
-    }
-}
-
 /* GtkCssIconStyle */
 
 static const GtkCssValueClass GTK_CSS_VALUE_ICON_STYLE = {
index b1be91ddf200edf395bde6d1cabaa3e57e72c01a..5b6c6f393c381b035e450ad954f652c59c1276f4 100644 (file)
@@ -81,12 +81,6 @@ GtkCssValue *   _gtk_css_fill_mode_value_new          (GtkCssFillMode     fill_m
 GtkCssValue *   _gtk_css_fill_mode_value_try_parse    (GtkCssParser      *parser);
 GtkCssFillMode  _gtk_css_fill_mode_value_get          (const GtkCssValue *value);
 
-GtkCssValue *   _gtk_css_icon_effect_value_new        (GtkCssIconEffect   image_effect);
-GtkCssValue *   _gtk_css_icon_effect_value_try_parse  (GtkCssParser      *parser);
-GtkCssIconEffect _gtk_css_icon_effect_value_get       (const GtkCssValue *value);
-void            gtk_css_icon_effect_apply             (GtkCssIconEffect   icon_effect,
-                                                       cairo_surface_t   *surface);
-
 GtkCssValue *   _gtk_css_icon_style_value_new         (GtkCssIconStyle    icon_style);
 GtkCssValue *   _gtk_css_icon_style_value_try_parse   (GtkCssParser      *parser);
 GtkCssIconStyle _gtk_css_icon_style_value_get         (const GtkCssValue *value);
index 6229d2d5ef769e0a09c1edb9fceb8cdec24691ee..15ea1cac4665e30bf019f36ae6bc67589411a645 100644 (file)
@@ -411,18 +411,6 @@ parse_css_fill_mode (GtkCssStyleProperty *property,
   return _gtk_css_array_value_parse (parser, parse_one_css_fill_mode);
 }
 
-static GtkCssValue *
-image_effect_parse (GtkCssStyleProperty *property,
-                   GtkCssParser        *parser)
-{
-  GtkCssValue *value = _gtk_css_icon_effect_value_try_parse (parser);
-
-  if (value == NULL)
-    _gtk_css_parser_error (parser, "unknown value for property");
-
-  return value;
-}
-
 static GtkCssValue *
 icon_palette_parse (GtkCssStyleProperty *property,
                    GtkCssParser        *parser)
@@ -1606,15 +1594,6 @@ _gtk_css_style_property_init_properties (void)
                                           opacity_parse,
                                           opacity_query,
                                           _gtk_css_number_value_new (1, GTK_CSS_NUMBER));
-  gtk_css_style_property_register        ("-gtk-icon-effect",
-                                         GTK_CSS_PROPERTY_ICON_EFFECT,
-                                         G_TYPE_NONE,
-                                         GTK_STYLE_PROPERTY_INHERIT,
-                                          GTK_CSS_AFFECTS_ICON,
-                                         image_effect_parse,
-                                         NULL,
-                                         _gtk_css_icon_effect_value_new (GTK_CSS_ICON_EFFECT_NONE));
-  _gtk_style_property_add_alias ("-gtk-icon-effect", "-gtk-image-effect");
 
   /* Private property holding the binding sets */
   gtk_css_style_property_register        ("-gtk-key-bindings",
index 885d9d472bfccc212bee7e1825be62529d3165f5..9e080871a4952e9c7a28c236ff2de6d9bf466e49 100644 (file)
@@ -225,7 +225,7 @@ enum { /*< skip >*/
   GTK_CSS_PROPERTY_ANIMATION_DELAY,
   GTK_CSS_PROPERTY_ANIMATION_FILL_MODE,
   GTK_CSS_PROPERTY_OPACITY,
-  GTK_CSS_PROPERTY_ICON_EFFECT,
+  GTK_CSS_PROPERTY_FILTER,
   GTK_CSS_PROPERTY_GTK_KEY_BINDINGS,
   GTK_CSS_PROPERTY_CARET_COLOR,
   GTK_CSS_PROPERTY_SECONDARY_CARET_COLOR,
@@ -281,12 +281,6 @@ typedef enum /*< skip >*/ {
   GTK_CSS_FILL_BOTH
 } GtkCssFillMode;
 
-typedef enum /*< skip >*/ {
-  GTK_CSS_ICON_EFFECT_NONE,
-  GTK_CSS_ICON_EFFECT_HIGHLIGHT,
-  GTK_CSS_ICON_EFFECT_DIM
-} GtkCssIconEffect;
-
 typedef enum /*< skip >*/ {
   GTK_CSS_ICON_STYLE_REQUESTED,
   GTK_CSS_ICON_STYLE_REGULAR,
index 9f3cdb1fd6c377499c58c6d8b24ee543f1edc606..d47c514ee50521f48c91e9d26c15c2d0cf190105 100644 (file)
@@ -379,7 +379,6 @@ ensure_surface_from_pixbuf (GtkIconHelper *self,
   gint width, height;
   cairo_surface_t *surface;
   GdkPixbuf *pixbuf;
-  GtkCssIconEffect icon_effect;
 
   if (get_pixbuf_size (self,
                        scale,
@@ -393,8 +392,6 @@ ensure_surface_from_pixbuf (GtkIconHelper *self,
     pixbuf = g_object_ref (orig_pixbuf);
 
   surface = gdk_cairo_surface_create_from_pixbuf (pixbuf, scale, gtk_widget_get_window (gtk_css_gadget_get_owner (GTK_CSS_GADGET (self))));
-  icon_effect = _gtk_css_icon_effect_value_get (gtk_css_style_get_value (style, GTK_CSS_PROPERTY_ICON_EFFECT));
-  gtk_css_icon_effect_apply (icon_effect, surface);
   g_object_unref (pixbuf);
 
   return surface;
@@ -469,14 +466,7 @@ ensure_surface_for_gicon (GtkIconHelper    *self,
 
   surface = gdk_cairo_surface_create_from_pixbuf (destination, scale, gtk_widget_get_window (gtk_css_gadget_get_owner (GTK_CSS_GADGET (self))));
 
-  if (!symbolic)
-    {
-      GtkCssIconEffect icon_effect;
-
-      icon_effect = _gtk_css_icon_effect_value_get (gtk_css_style_get_value (style, GTK_CSS_PROPERTY_ICON_EFFECT));
-      gtk_css_icon_effect_apply (icon_effect, surface);
-    }
-  else
+  if (symbolic)
     {
       priv->rendered_surface_is_symbolic = TRUE;
     }